<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.prime.com.tr/ui">

<!-- 
		Replace path to template, title, header and body
		with actual data.
	 -->
<ui:composition template="../template/layout.xhtml">
	<ui:define name="titulo">#{authUtilizadorControle.tituloPagina}</ui:define>

	<ui:define name="frConteudo">
		<h:form id="form">
			<!-- 
							<h:outputLabel value="" />
							<h:inputHidden value="#{authUtilizadorControle.infoBean.id}" />
							-->
			<h:panelGrid columns="1" border="0" height="100%">

				<!-- bloco de edição -->
				<p:panel header="#{authUtilizadorControle.tituloPagina}"
					rendered="#{authUtilizadorControle.estadoCrud}">
					<h:panelGrid columns="1">
						<f:facet name="header">
							<p:messages id="msgErro" />
						</f:facet>
					<h:panelGrid border="0" columns="2" 
							rendered="#{!authUtilizadorControle.estadoFormVazio}">
						<h:outputLabel value="#{msg.authUtilizador}" for="utilizador" />
						<h:inputText id="utilizador" label="#{msg.authUtilizador}"
							size="15" maxlength="15"
							value="#{authUtilizadorControle.infoBean.username}"
							required="true"
							requiredMessage="#{msg.authUtilizadorRequiredMessage}"
							validatorMessage="#{msg.authUtilizadorValidatorMessage}">
							<f:validateRegex pattern="([a-z]|[0-9]|[.]|[_]){5,15}" />
						</h:inputText>

						<h:outputLabel value="#{msg.authUtilizadorPassword}"
							for="password" />
						<h:inputSecret id="password" label="#{msg.authUtilizadorPassword}"
							size="15" maxlength="15"
							value="#{authUtilizadorControle.infoBean.password}"
							required="true"
							requiredMessage="#{msg.authUtilizadorPasswordRequiredMessage}" />

						<h:outputLabel value="#{msg.authUtilizadorConfirmarPassword}"
							for="confirmaSenha" />
						<h:inputSecret id="confirmaSenha"
							label="#{msg.authUtilizadorConfirmarPassword}"
							value="#{authUtilizadorControle.confirmaPassword}" size="10"
							maxlength="15" required="true"
							requiredMessage="#{msg.authUtilizadorPasswordRequiredMessage}"
							redisplay="true" />

						<h:outputLabel value="#{msg.authUtilizadorNome}" for="nome" />
						<h:inputText id="nome" label="#{msg.authUtilizadorNome}"
							value="#{authUtilizadorControle.infoBean.nome}" required="true"
							size="30" maxlength="30"
							requiredMessage="#{msg.authUtilizadorNomeRequiredMessage}">
							<f:validateLength minimum="10" maximum="30" />
						</h:inputText>

						<h:outputLabel value="#{msg.authUtilizadorActivo}" for="activo" />
						<h:selectBooleanCheckbox id="activo"
							label="#{msg.authUtilizadorActivo}"
							value="#{authUtilizadorControle.infoBean.activo}" />

						<h:outputLabel value="#{msg.authGrupo}" for="grupo" />
						<h:selectOneMenu id="grupo"
							value="#{authUtilizadorControle.infoBean.grupo}"
							required="true" requiredMessage="#{msg.authGrupoRequiredMessage}">
							<f:selectItems
								value="#{authGrupoControle.itemsAvailableSelectOne}" />
						</h:selectOneMenu>

						<h:outputLabel value="#{msg.authUtilizadorTelefone}"
							for="telefone" />
						<h:inputText id="telefone" label="#{msg.authUtilizadorTelefone}"
							value="#{authUtilizadorControle.infoBean.telefone}" />

						<h:outputLabel value="#{msg.authUtilizadorExtensao}"
							for="extensao" />
						<h:inputText id="extensao" label="#{msg.authUtilizadorExtensao}"
							value="#{authUtilizadorControle.infoBean.extensao}" />

						<h:outputLabel value="#{msg.authUtilizadorFax}" for="fax" />
						<h:inputText id="fax" label="#{msg.authUtilizadorFax}"
							value="#{authUtilizadorControle.infoBean.fax}" />

						<h:outputLabel value="#{msg.authUtilizadorEmail}" for="email" />
						<h:inputText id="email" label="#{msg.authUtilizadorEmail}"
							size="50" maxlength="50"
							value="#{authUtilizadorControle.infoBean.email}"
							required="true"
							requiredMessage="#{msg.authUtilizadorEmailRequiredMessage}"
							validatorMessage="#{msg.authUtilizadorEmailValidatorMessage}">
							<f:validateRegex pattern="[a-zA-Z0-9\-\_\.]+@[a-zA-Z0-9\-\_\.]+" />
						</h:inputText>

							<f:facet name="footer">
								<h:panelGroup>
									<center>
										<h:commandButton id="salvarButton" value="#{msg.salvarButton}"
											action="#{authUtilizadorControle.gravar}"
											rendered="#{authUtilizadorControle.estadoAdicionar}" />
										<h:commandButton id="alterarButton"
											value="#{msg.alterarButton}" action="#{authUtilizadorControle.gravar}"
											rendered="#{authUtilizadorControle.estadoActualizar}" />
										<h:commandButton id="eliminarButton"
											value="#{msg.eliminarButton}"
											action="#{authUtilizadorControle.excluir}"
											rendered="#{authUtilizadorControle.estadoEliminar}"
											onclick="if(!confirm('Confirma a exclusão do registo?')) return false;" />
										<h:commandButton id="limparButton" value="#{msg.limparButton}"
											type="reset" rendered="#{authUtilizadorControle.estadoAdicionar}" />
										<h:commandButton id="cancelarButton"
											value="#{msg.cancelarButton}" action="#{authUtilizadorControle.voltar}"
											immediate="true" />
									</center>
								</h:panelGroup>
							</f:facet>
					</h:panelGrid>
					</h:panelGrid>
				</p:panel>
				<!-- fim do bloco de edição -->
			</h:panelGrid>
			<h:panelGroup>
				<h:commandLink action="#{authUtilizadorControle.voltar}"
					immediate="true" value="#{msg.geralLinkListaRegistos}" />
			</h:panelGroup>
		</h:form>
	</ui:define>
</ui:composition>
</html>
